package com.yupi.springbootinit.statemachine.enums;

import com.yupi.springbootinit.statemachine.core.Event;

/**
 * 订单事件枚举
 * 对应订单状态流转的触发事件
 */
public enum OrderEventEnum implements Event {
    
    PUBLISH_ROUTING("PUBLISH_ROUTING", "发布工艺", "ORDER"),
    PUBLISH_SCHEDULE("PUBLISH_SCHEDULE", "发布排期", "ORDER"),
    START_PRODUCTION("START_PRODUCTION", "开始生产", "ORDER"),
    START_INSPECTION("START_INSPECTION", "开始检验", "ORDER"),
    COMPLETE_ORDER("COMPLETE_ORDER", "完成订单", "ORDER");
    
    private final String code;
    private final String description;
    private final String eventType;
    
    OrderEventEnum(String code, String description, String eventType) {
        this.code = code;
        this.description = description;
        this.eventType = eventType;
    }
    
    @Override
    public String getCode() {
        return code;
    }
    
    @Override
    public String getDescription() {
        return description;
    }
    
    @Override
    public String getEventType() {
        return eventType;
    }
}